package com.qumitech.visualnovel.datasource.console;

import com.qumitech.visualnovel.model.dao.console.ChannelCPCStatistics;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ChannelCPCStatisticsMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(ChannelCPCStatistics record);

    int insertSelective(ChannelCPCStatistics record);

    ChannelCPCStatistics selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(ChannelCPCStatistics record);

    int updateByPrimaryKey(ChannelCPCStatistics record);

    /**
     * CPC渠道列表详情
     * @param startTime 开始日期
     * @param endTime 结束日期
     * @param channel 渠道名称
     * @param appId 产品ID
     * @param offset 页码
     * @param pageSize 页大小
     * @param orderType 排序方式
     * @param orderBy 排序字段
     * @return 列表详情信息
     */
    List<ChannelCPCStatistics> getList(@Param("startTime") String startTime,
                                       @Param("endTime") String endTime,
                                       @Param("channel") String channel,
                                       @Param("appId") String appId,
                                       @Param("offset") int offset,
                                       @Param("pageSize") int pageSize,
                                       @Param("orderType") String orderType,
                                       @Param("orderBy") String orderBy);

    /**
     * CPC渠道列表总数
     * @param startTime 开始日期
     * @param endTime 结束日期
     * @param channel 渠道名称
     * @param appId 产品ID
     * @return 列表总数
     */
    int getCount(@Param("startTime") String startTime,
                 @Param("endTime") String endTime,
                 @Param("channel") String channel,
                 @Param("appId") String appId);
}